---
title: "Kubernetes Pods"
date: 2023-03-28T21:54:43+03:00
description: "О pod'ах в k8s"
tags: ["k8s", "pod"]
ShowToc: true
ShowBreadCrumbs: true
draft: false
---

__Pod__ - это абстрактный объект k8s

Внутри pod’а всегда существует 2 контейнера: 1 наш container , 2 container POD (нужен для создания сети контейнеров, Network namespace, проверить этот факт????)

Pod неделимая единица, то есть 1 pod запускается на 1 node, и если у pod несколько контейнеров, они будут работать только на 1 ноде

Запускать несколько контейнеров на 1 pod не рекомендуется в в общем случаи

Имеет смысл запустить если

1. Контейнеры нужно запускать на 1 ноде (пример: приложение и кэш, но тогда это будет кэш под конкретное приложение, а не общий)
2. Масштабируются линейно (аналогично 1 пункту)
3. Есть сильная связь между компонентами

Пример сильной связи:

1. Prometheus и config reloader, прометеус не видит изменений в конфиг файле, поэтому ему нужен релоадер
2. Экспортеры от прометеуса и приложения
3. Отдельный авторизующий сервис перед каждым приложением

Описания портов в поде это не более чем документация

Можно рассматривать под как инстанс, а контейнер как процесс
